/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.geotools.geosearch;

import java.util.LinkedList;
import org.geotools.data.simple.SimpleFeatureCollection;
import org.geotools.geometry.DirectPosition2D;
import org.geotools.graph.path.Path;

/**
 *
 * @author oleg
 */
public abstract class AbstractRouteFactory {

    public enum OrderType {
        DONTORDER, ORDERPLEASE
    };
    
    Guide guide;
    
    public AbstractRouteFactory(Guide guide) {
        this.guide=guide;
    }

    public abstract Route createRoute(DirectPosition2D points[], OrderType orderType);
    public abstract Route createRoute(LinkedList<RoutePoint> points, OrderType orderType);

    public abstract SimpleFeatureCollection createPathSFC(DirectPosition2D points[], OrderType orderType);
}
